技術問答
技術文章
iT 徵才
Tag
聊天室
2024 鐵人賽
登入/註冊
問答
文章
Tag
邦友
鐵人賽
搜尋
2024 iThome 鐵人賽
DAY
19
0
佛心分享-IT 人自學之術
區塊鏈技術應用
系列 第
19
篇
DApp 的基本概念
16th鐵人賽
alex7777
2024-10-03 16:43:17
160 瀏覽
分享至
去中心化應用 (DApp):DApp 是基於區塊鏈技術構建的應用程式,其後端邏輯運行於去中心化的區塊鏈上,通常與智能合約進行交互,沒有中心伺服器。
1.DApp 的架構
前端 (Front-End):
用於與用戶交互,通常使用 HTML、CSS、JavaScript 等技術。
通過 Web3.js(或其他類似工具,如 Ethers.js)與區塊鏈交互。
後端 (Back-End):
通常由智能合約(例如使用 Solidity 編寫)構成。
智能合約部署在區塊鏈上,負責執行 DApp 的邏輯,例如管理數據、執行交易等。
區塊鏈 (Blockchain)
承載智能合約和數據存儲,提供安全、透明和不可篡改的環境。
2.DApp 開發的基本流程
編寫智能合約:
使用 Solidity 編寫智能合約,定義應用程式的後端邏輯。
確保合約符合去中心化應用的需求,並進行充分的測試。
範例合約:
部署智能合約
使用 Truffle 或 Remix 等工具將合約部署到區塊鏈上
使用 Web3.js 進行交互
範例:開發一個簡單的眾籌 DApp
用戶可以創建一個眾籌項目,設定籌款目標和結束時間。
其他人可以向項目捐款,並跟踪進度。
項目結束後,如果達到目標,創建者可以提款。
這段程式碼是一個簡單的「眾籌合約(Crowdfunding)」的智能合約,使用 Solidity 編寫,允許用戶向一個眾籌專案捐款,並在達到目標後,合約的擁有者可以提取所籌資金。
留言
追蹤
檢舉
上一篇
Solidity 中的代幣合約
下一篇
Web3.js 基礎學習
系列文
區塊鏈技術應用
共
30
篇
目錄
RSS系列文
訂閱系列文
2
人訂閱
26
前端交互測試
27
如何在 Web3.js 中監聽智能合約事件
28
Crowdfunding
29
常見的智能合約安全漏洞
30
常見的智能合約安全漏洞2
完整目錄
直播研討會
{{ item.subject }}
{{ item.channelVendor }}
{{ item.webinarstarted }}
|
{{ formatDate(item.duration) }}
直播中
立即報名
尚未有邦友留言
立即登入留言
iThome鐵人賽
參賽組數
1064
組
團體組數
40
組
累計文章數
22209
篇
完賽人數
600
人
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
看更多
15th鐵人賽
16th鐵人賽
13th鐵人賽
14th鐵人賽
12th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
windows
php
c#
windows server
linux
css
react
vue.js
熱門問題
PDF影像資料不足
如何阻止系統再次安裝 KB5048652 更新(或某一個更新)
如何簡單的建立 mail 的測試環境
鐵人賽頒獎典禮
2025年的未來規劃
google擴展,函數無法定義
請問EXECL如何開啟"獨立"活頁薄
RAID5 - Synology DickStation 自動更新已取消
Nginx 同個 domain name alias 多個專案問題
請問有人知道有無HTML標籤管制的外掛嗎?
熱門回答
2025年的未來規劃
如何簡單的建立 mail 的測試環境
請問EXECL如何開啟"獨立"活頁薄
從外部網路 連線VPN後非共享的資料夾都可以看是什麼問題
PDF影像資料不足
熱門文章
Day 42 - toSignal 函數中的相等性檢查
【JavaScript】call / apply / bind
Benchmarking Quantum and Quantum Inspired Optimization Solvers(NotebookLM + descript AI)
Day 44 - toSignal 函數的初始值
【Pinia】在store中調用其他store的資料
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}